Skip to content

#3 add buf CI workflow for lint and breaking checks#34

Open
VasilevNStas wants to merge 1 commit into
APN-Network:masterfrom
VasilevNStas:3
Open

#3 add buf CI workflow for lint and breaking checks#34
VasilevNStas wants to merge 1 commit into
APN-Network:masterfrom
VasilevNStas:3

Conversation

@VasilevNStas

Copy link
Copy Markdown
Contributor

Description

The repository has no .github/workflows/ directory and no buf.yaml, so every push to master and every pull request merges without any automated check that the .proto files compile cleanly or conform to proto conventions.

A duplicate field number, a syntax error, or a breaking wire change would pass review and land in the default branch undetected, then propagate silently to all consumers (Go, Swift, Node).

Changes

  • Adds buf.yaml with STANDARD lint rules (excluding those that fire on existing code: ENUM_VALUE_PREFIX, ENUM_ZERO_VALUE_SUFFIX, FIELD_NOT_REQUIRED, PACKAGE_DIRECTORY_MATCH, PACKAGE_VERSION_SUFFIX).
  • Adds .github/workflows/ci.yml that runs buf lint and buf breaking --against '.git#branch=master' on every PR.
  • Breaking check uses FILE level, so any incompatible modification to a message, field, or enum is caught before merge.

Validation

Both buf lint and buf breaking pass locally against the current master.

Closes #3

Adds a GitHub Actions workflow that runs buf lint and buf breaking
on every pull request against master. Also adds a minimal buf.yaml
with STANDARD lint rules (excluding those that fire on the existing
codebase: ENUM_VALUE_PREFIX, ENUM_ZERO_VALUE_SUFFIX,
FIELD_NOT_REQUIRED, PACKAGE_DIRECTORY_MATCH, PACKAGE_VERSION_SUFFIX).

Breaking changes are checked at the FILE level, so any incompatible
modification to an existing message, field, or enum is caught before
merge.

Closes APN-Network#3
@VasilevNStas

Copy link
Copy Markdown
Contributor Author

@yegor256 plz review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

No CI: proto files are not compiled or linted on push

1 participant